/*
 * This file contains the main elementary functions and classes for the back end.
 * PLEASE CLEANUP UR CODE BEFORE COMMITING.
 * Author: Me
 */

#include "SampleHeader.h"

/**
 * This is an Abstract class Declaration. Just like java interfaces.
 * displayMessage: Message and/or warnings to be displayed.
 * currentWeapon: The current active weapon helf by the player.
 * WEAPON_DEFAULT: The default weapon code held by the player. This is constant and cannot change
 * reset: Set to true if you want to reset the game state
 */
class SampleClass
{
		static String displayMessage;
		static unsigned char currentWeapon;
		static const int WEAPON_DEFAULT = 1;
		static bool reset;
		static void resetClass(void);
		void sampleMethod(void);
		int anotherSampleMethod(unsigned char, String);
};

/**
 * This method simply resets the Sample class to it's initial state
 * Author: Whoever.
 */
static void SampleClass::resetClass(void)
{
	reset = true;
}

/**
 * This is a brief fair method description in plain understandable English.
 * Author: Someone who speaks English
 */
void SampleClass::sampleMethod(void)
{
	//Implemntation goes here.
	//This is a comment that I left for myself inside the method.
}

/**
 * This is a very good description of a method that takes parameters and returns something
 * x: The weapon picked up by the player
 * y: A stupid message
 * returns The game winning mode time limit code
 * Author: A Very sleepy guy.
 */
int SampleClass::anotherSampleMethod(unsigned char x, String y)
{
	if (x != WEAPON_GUN) //Remember that macro defined in the header file?
		currentWeapon = WEAPON_DEFAULT; //reset current weapon to it's default value please.
	displayMessage = y;
	return GAME_WINNING_MODE_TIME_LIMIT; //Still remember those macros?
}
